package cn.xd.base.domain.bean.response;

import cn.xd.base.domain.entity.KeyValue;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * @author : mirzaLin
 * @data : 2023/11/20
 * @description :
 **/
@Data
@NoArgsConstructor
public class JsonKeyValueTree implements Serializable {
    /**
     * id
     */
    private Long id;
    /**
     * 关键字-也就是设计的value
     */
    private String key;
    /**
     * 父id
     */
    private Long parentId;
    /**
     * value-也就是设计的name
     */
    private String value;
    /**
     * 是否展示
     */
    private Boolean display;
    /**
     * 备注
     */
    private String remark;

    private List<JsonKeyValueTree> children;

    public JsonKeyValueTree(KeyValue keyValue) {
        this.setId(keyValue.getId().getValue());
        this.setParentId(keyValue.getParentId().getValue());
        this.setKey(keyValue.getDictKey().getValue());
        this.setValue(keyValue.getDictValue().getValue());
        this.setRemark(keyValue.getRemark().getValue());
        this.setDisplay(keyValue.getDisplay().getValue());
    }
}
